package com.ruoyi.app.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.ArrayList;

/**
 * 活动信息对象 app_activity
 *
 * @author ruoyi
 * @date 2025-03-19
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("app_activity")
public class AppActivity extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    @TableId(type = IdType.AUTO)
    private Long activityId;

    /**
     * 活动标题
     */
    @Excel(name = "活动标题")
    private String title;

    /**
     * 活动描述
     */
    @Excel(name = "活动描述")
    private String description;

    /**
     * 活动分类
     */
    @Excel(name = "活动分类")
    private String category;

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /**
     * 结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /**
     * 活动地点
     */
    @Excel(name = "活动地点")
    private String location;

    /**
     * 最大人数
     */
    @Excel(name = "最大人数")
    private Long maxCount;

    /**
     * 状态0待审核1通过2拒绝
     */
    @Excel(name = "状态0待审核1通过2拒绝")
    private String status;

    private Long ruleId;

    @TableField(exist = false)
    private Long currCount;
    @Excel(name = "规则对应的学分值")

    @TableField(exist = false)
    private BigDecimal points;

    @TableField(exist = false)
    @Excel(name = "规则名称")
    private String ruleName;
}
